Quantum computing is a relatively new computing method that takes advantage of quantum effects, such as superposition of basis states and entanglement to perform certain computations more efficiently than a classical digital computer. In contrast to a digital computer, which stores and manipulates information in the form of bits (e.g., a “1” or “0”), quantum computing systems can manipulate information using qubits. A qubit can refer to a quantum device that enables the superposition of multiple states (e.g., data in both the “0” and “1” state) and/or to the superposition of data, itself, in the multiple states. In accordance with conventional terminology, the superposition of a “0” and “1” state in a quantum system may be represented, e.g., as a α|0>+β|0>. The “0” and “1” states of a digital computer are analogous to the |0> and |1> basis states, respectively of a qubit. The value |α|2 represents the probability that a qubit is in |0> state, whereas the value |β|2 represents the probability that a qubit is in the |1> basis state.
Quantum annealing is an analog approach to quantum computation. With quantum annealing, also known as adiabatic quantum computing, a computational problem is encoded in interactions among multiple qubits. The encoded computational problem is referred to as the problem Hamiltonian Hp. The collection of encoded qubits then is slowly annealed to the lowest energy configuration of a final Hamiltonian Hf representative of a solution to the encoded problem. This model can sometimes be referred to as the adiabatic model of quantum computation.